Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Програмування портів клавіатури мікро¬процесора Intel 8086 (80286).

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Системи автоматизованого проектуваня

Інформація про роботу

Рік:
2003
Тип роботи:
Лабораторна робота
Предмет:
Комп’ютери і мікропроцесорні системи
Група:
КН

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра САПР  Звіт з лабораторної роботи № 10 “Програмування портів клавіатури мікропроцесора Intel 8086 (80286)” Виконала: студентка гр. КН 3 Львів 2003 МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра САПР  Звіт з лабораторної роботи № 10 “Програмування портів клавіатури мікропроцесора Intel 8086 (80286)” Виконав: студент гр. КН-37 Данчук Є.С. Перевірив: Герус В.А. Львів 2003 МЕТА РОБОТИ Вивчити основні шляхи програмування портів клавіатури на ЕОМ з мікропроцесором Intel 8086(80286). ТЕОРЕТИЧНІ ВІДОМОСТІ Одним з найважливіших пристроїв персонального комп'ютера є клавіатура, яка призначена для інтерфейсу між користувачем та комп'ютером. На даний час існує три основні типи клавіатур. Це - клавіатура для комп'ютерів ШМ PC/XT, яка містить 84 клавіші та 101-клавішна клавіатура для IBM PC/AT. Деякі клавіатури містять перемикач режиму роботи (XT/AT). Як контролер виступає процесор Intel 8042, який призначений для обміну між клавіатурою та CPU. Усі горизонтальні лінії матриці підключені через резистор до джерела живлення +5В. Контролер клавіатури містить два порти - вхідний і вихідний. Вхідний порт підключений до горизонтальних ліній матриці (ХО-Х4), а вихідний - до вертикальних (YO-Y4) Принцип роботи даного пристрою полягає в тому, що контролер почергово на вертикальних лініях встановлює значення логічного нуля. Потім він почергово опитує горизонтальні лінії. У випадку, коли натиснутих клавіш не має, рівень напруги на всіх горизонтальних лініях буде відповідати логічній 1 (всі ці лінії підключені до джерела живлення +5V через резистори). У випадку, коли натиснута клавіша - на відповідній горизонтальній лінії буде логічний нуль. На наступному кроці визначається ASCII- код натиснутої клавіші. Для роботи з клавіатурою використовують порти з адресами 60Н та 61Н. Порт 60Н при читанні містить скан-код останньої натисненої клавіші. IN AL, 60Н Для встановлення характеристик автоповтору в порт 60Н необхідно записати код команди, а потім байт, що визначає характеристики режиму. Період автоповтору визначає кількість посилок скан-коду, генерованих процесором клавіатури за одну секунду. Можна використовувати не лише ті значення, які наведені в таблиці, але й проміжні (наприклад, 9 або 16Н). При керуванні світлодіодама використовують команду OEDH. Потім в порт 60Н необхідно записати байт, що має наступний формат: Використання портів при роботі з клавіатурою є дуже громіздкою роботою для програміста, тому зручніше використати вже готові процедури і функції BIOS(Basic Input/Output System – Базова Система Вводу/Виводу), які розміщені в постійному запам'ятовуючому пристрої комп'ютера. Для вводу з клавіатури використовують переривання BIOS INT 16Н та переривання DOS INT 21Н. MOV AH, номер функції int 16h Функція 00h - означає чекати до того часу, поки користувач не натисне клавішу. В результаті, у регістрі AL, отримаємо код ASCII символу, а якщо в AL нуль, то в АН - розширений код ASCII. Функція 0lh - перевіряє готовність символу на ввід та виводить його, якщо він готовий. Контроль організований по значенню прапорця нуля, якщо клавішу натиснули, то ZF=0. В іншому випадку - ZF=1, тобто клавішу не натискали і черга порожня (ця функція не забирає символ з черги, а тільки перевіряє наявність) Функція 02h - читає статус Shift – клавіш. У результаті, в регістрі АL міститься статус клавіатури. Коли користувач натискає на клавішу, то автоматично викликається апаратне переривання BIOS. Далі клавіша розпізнається і її код записується в так звану чергу (буфер клавіатури). Буфер клавіатури - спеціальна ділянка пам'яті відведена під збереження кодів натиснених клавіш. Саме з буфера клавіатури (по черзі) зчитуються ASCII- коди клавіш, коли ми викликаємо функцію BIOS INT 16h (AH=00h). Прочитаний символ з буфера стирається. ЗАВДАННЯ КОД ПРОГРАМИ
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини